package com.hl.ruoyicsmshop.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 优惠券对象 coupons
 * 
 * @author ruoyi
 * @date 2025-01-27
 */
public class Coupons extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 优惠券ID */
    private Long couponId;

    /** 优惠券名称 */
    @Excel(name = "优惠券名称")
    private String couponName;

    /** 优惠券消费门槛 */
    @Excel(name = "优惠券消费门槛")
    private BigDecimal couponDoorsill;

    /** 优惠券使用范围（全品类/指定商品） */
    @Excel(name = "优惠券使用范围")
    private String couponRange;

    /** 优惠券类型（满减券，折扣券） */
    @Excel(name = "优惠券类型")
    private String couponType;

    /** 优惠券优惠金额（如果是折扣券就为空） */
    @Excel(name = "优惠券优惠金额")
    private BigDecimal couponMoney;

    /** 优惠券折扣（如果是满减券就为空） */
    @Excel(name = "优惠券折扣")
    private BigDecimal couponDiscount;

    /** 有效期开始时间 */
    @Excel(name = "有效期开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date couponStartTime;

    /** 有效期结束时间 */
    @Excel(name = "有效期结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date couponEndTime;

    /** 优惠券描述 */
    @Excel(name = "优惠券描述")
    private String couponContent;

    public void setCouponId(Long couponId) 
    {
        this.couponId = couponId;
    }

    public Long getCouponId() 
    {
        return couponId;
    }

    public void setCouponName(String couponName) 
    {
        this.couponName = couponName;
    }

    public String getCouponName() 
    {
        return couponName;
    }

    public void setCouponDoorsill(BigDecimal couponDoorsill) 
    {
        this.couponDoorsill = couponDoorsill;
    }

    public BigDecimal getCouponDoorsill() 
    {
        return couponDoorsill;
    }

    public void setCouponRange(String couponRange) 
    {
        this.couponRange = couponRange;
    }

    public String getCouponRange() 
    {
        return couponRange;
    }

    public void setCouponType(String couponType) 
    {
        this.couponType = couponType;
    }

    public String getCouponType() 
    {
        return couponType;
    }

    public void setCouponMoney(BigDecimal couponMoney) 
    {
        this.couponMoney = couponMoney;
    }

    public BigDecimal getCouponMoney() 
    {
        return couponMoney;
    }

    public void setCouponDiscount(BigDecimal couponDiscount) 
    {
        this.couponDiscount = couponDiscount;
    }

    public BigDecimal getCouponDiscount() 
    {
        return couponDiscount;
    }

    public void setCouponStartTime(Date couponStartTime) 
    {
        this.couponStartTime = couponStartTime;
    }

    public Date getCouponStartTime() 
    {
        return couponStartTime;
    }

    public void setCouponEndTime(Date couponEndTime) 
    {
        this.couponEndTime = couponEndTime;
    }

    public Date getCouponEndTime() 
    {
        return couponEndTime;
    }

    public void setCouponContent(String couponContent) 
    {
        this.couponContent = couponContent;
    }

    public String getCouponContent() 
    {
        return couponContent;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("couponId", getCouponId())
            .append("couponName", getCouponName())
            .append("couponDoorsill", getCouponDoorsill())
            .append("couponRange", getCouponRange())
            .append("couponType", getCouponType())
            .append("couponMoney", getCouponMoney())
            .append("couponDiscount", getCouponDiscount())
            .append("couponStartTime", getCouponStartTime())
            .append("couponEndTime", getCouponEndTime())
            .append("couponContent", getCouponContent())
            .toString();
    }
}
